package gui.Project.Gui;

import javax.swing.*;
import java.awt.*;

/**
 * @Package: gui.Project.Gui
 * @ClassName: AboutGui
 * @Author: @影流之主(博联杯小组)
 * @CreateTime: 2021/1/6
 * @Description:类AboutGui的主要作用是显示程序关于内的文本，供用户查阅图形面积计算公式
 */
public class AboutGui extends JFrame
{
	/* 定义label标签，用于显示计算公式文本*/
    private JLabel AboutLabel = new JLabel(" 以下为各个图形的面积计算公式，供用户查阅", JLabel.CENTER);
    private JLabel TriangleLabel_1 = new JLabel(" 三角形面积计算公式：S=√p(p-a)(p-b)(p-c)");
    private JLabel TriangleLabel_2 = new JLabel(" 其中p为周长的一半，a,b,c为三角形的边长。");
    private JLabel ParallelogramLabel_1 = new JLabel(" 平行四边形面积计算公式：ab*sinα");
    private JLabel ParallelogramLabel_2 = new JLabel(" 其中a,b为平行四边形的两条邻边，sinα为两条边的夹角α的正弦值。");
    private JLabel DiamondLabel_1 = new JLabel(" 菱形面积计算公式：ab*sinα");
    private JLabel DiamondLabel_2 = new JLabel(" 其中a,b为菱形的两条邻边，sinα为两条边的夹角α的正弦值。");
    private JLabel RectangleLabel_1 = new JLabel(" 长方形面积计算公式：a*b");
    private JLabel RectangleLabel_2 = new JLabel(" 其中a,b为长方形的宽和高。");
    private JLabel SquareLabel_1 = new JLabel(" 正方形面积计算公式：a*a");
    private JLabel SquareLabel_2 = new JLabel(" 其中a为正方形的边长。");
    private JLabel Pentagon_1 = new JLabel(" 正五边形面积计算公式：5*a*a*tan(54º)/4");
    private JLabel Pentagon_2 = new JLabel(" 其中a为正五边形的边长，tan(54º)为54度角的正切值。");
    private JLabel Hexagon_1 = new JLabel(" 正六边形面积计算公式：(3*√3*a*a)/2");
    private JLabel Hexagon_2 = new JLabel(" 其中a为正六边形的边长。");
    private JLabel NoteLabel = new JLabel(" 计算器计算出的周长和面积结果不包含指数时，小数点位最多精确到小数点后四位", JLabel.CENTER);

    /* 无参构造函数*/
    public AboutGui()
    {
        setSize(1250,700);              //窗口大小为1250*700
        setLocation(390,250);           //窗口显示位置(390,250)
        setTitle("程序关于");           // 窗口标题为程序关于

        AGuiMain();                     //调用AGuiMain以显示各组件
    }

    /*AGUIMain函数处理窗口的具体组件显示处理和设置界面的布局管理器*/
    private void AGuiMain()
    {
        setLayout(new GridLayout(9,1));     //将界面的布局管理器设置为GridLayout，布局方式为9行1列
        /* 创建9个面板，然后将9个面板添加进界面中*/
        JPanel panel1 = new JPanel();
        JPanel panel2 = new JPanel();
        JPanel panel3 = new JPanel();
        JPanel panel4 = new JPanel();
        JPanel panel5 = new JPanel();
        JPanel panel6 = new JPanel();
        JPanel panel7 = new JPanel();
        JPanel panel8 = new JPanel();
        JPanel panel9 = new JPanel();
        add(panel1);
        add(panel2);
        add(panel3);
        add(panel4);
        add(panel5);
        add(panel6);
        add(panel7);
        add(panel8);
        add(panel9);

        /*将面板1的布局管理器设置为new GridLayout1行1列，字体为设置为正楷，粗体，大小为19，颜色为红色*/
        panel1.setLayout(new GridLayout(1,1));
        AboutLabel.setFont(new Font("正楷", Font.BOLD, 19));
        AboutLabel.setForeground(Color.red);
        panel1.add(AboutLabel);

        /*将面板2的布局管理器设置为new GridLayout1行1列，字体为设置为正楷，粗体，大小为19，文本段1字体颜色为红色，文本段2字体颜色为黑色*/
        panel2.setLayout(new GridLayout(1,2));
        TriangleLabel_1.setFont(new Font("正楷", Font.BOLD, 19));
        TriangleLabel_2.setFont(new Font("正楷", Font.BOLD, 19));
        TriangleLabel_1.setForeground(Color.red);
        panel2.add(TriangleLabel_1);
        panel2.add(TriangleLabel_2);

        /*将面板3的布局管理器设置为new GridLayout1行1列，字体为设置为正楷，粗体，大小为19，文本段1字体颜色为红色，文本段2字体颜色为黑色*/
        panel3.setLayout(new GridLayout(1,2));
        ParallelogramLabel_1.setFont(new Font("正楷", Font.BOLD, 19));
        ParallelogramLabel_2.setFont(new Font("正楷", Font.BOLD, 19));
        ParallelogramLabel_1.setForeground(Color.red);
        panel3.add(ParallelogramLabel_1);
        panel3.add(ParallelogramLabel_2);

        /*将面板4的布局管理器设置为new GridLayout1行1列，字体为设置为正楷，粗体，大小为19，文本段1字体颜色为红色，文本段2字体颜色为黑色*/
        panel4.setLayout(new GridLayout(1,2));
        DiamondLabel_1.setFont(new Font("正楷", Font.BOLD, 19));
        DiamondLabel_2.setFont(new Font("正楷", Font.BOLD, 19));
        DiamondLabel_1.setForeground(Color.red);
        panel4.add(DiamondLabel_1);
        panel4.add(DiamondLabel_2);

        /*将面板5的布局管理器设置为new GridLayout1行1列，字体为设置为正楷，粗体，大小为19，文本段1字体颜色为红色，文本段2字体颜色为黑色*/
        panel5.setLayout(new GridLayout(1,2));
        RectangleLabel_1.setFont(new Font("正楷", Font.BOLD, 19));
        RectangleLabel_2.setFont(new Font("正楷", Font.BOLD, 19));
        RectangleLabel_1.setForeground(Color.red);
        panel5.add(RectangleLabel_1);
        panel5.add(RectangleLabel_2);

        /*将面板6的布局管理器设置为GridLayout1行1列，字体为设置为正楷，粗体，大小为19，文本段1字体颜色为红色，文本段2字体颜色为黑色*/
        panel6.setLayout(new GridLayout(1,2));
        SquareLabel_1.setFont(new Font("正楷", Font.BOLD, 19));
        SquareLabel_2.setFont(new Font("正楷", Font.BOLD, 19));
        SquareLabel_1.setForeground(Color.red);
        panel6.add(SquareLabel_1);
        panel6.add(SquareLabel_2);

        /*将面板7的布局管理器设置为GridLayout1行1列，字体为设置为正楷，粗体，大小为19，文本段1字体颜色为红色，文本段2字体颜色为黑色*/
        panel7.setLayout(new GridLayout(1,2));
        Pentagon_1.setFont(new Font("正楷", Font.BOLD, 19));
        Pentagon_2.setFont(new Font("正楷", Font.BOLD, 19));
        Pentagon_1.setForeground(Color.red);
        panel7.add(Pentagon_1);
        panel7.add(Pentagon_2);

        /*将面板8的布局管理器设置为GridLayout1行1列，字体为设置为正楷，粗体，大小为19，文本段1字体颜色为红色，文本段2字体颜色为黑色*/
        panel8.setLayout(new GridLayout(1,2));
        Hexagon_1.setFont(new Font("正楷", Font.BOLD, 19));
        Hexagon_2.setFont(new Font("正楷", Font.BOLD, 19));
        Hexagon_1.setForeground(Color.red);
        panel8.add(Hexagon_1);
        panel8.add(Hexagon_2);

        /*将面板9的布局管理器设置为GridLayout1行1列，字体为设置为正楷，粗体，大小为19，颜色为紫色*/
        panel9.setLayout(new GridLayout(1,1));
        NoteLabel.setFont(new Font("正楷", Font.BOLD, 19));
        NoteLabel.setForeground(Color.magenta);
        panel9.add(NoteLabel);

        setVisible(true);           //将GUI窗口设置为可见
    }
}
